package com.hurl.waguji.biz.download;

import com.hurl.library.spider.UrlPattern;
import com.hurl.library.util.DateUtils;
import com.hurl.library.util.StringUtils;
import com.hurl.waguji.base.Formatter;
import com.hurl.waguji.base.dataprocess.ProcessParams;
import com.hurl.waguji.persistence.DmGpBO;
import com.hurl.waguji.persistence.JcsjCwZcfzbHexunBO;
import com.hurl.waguji.persistence.JcsjCwZcfzbHexunBOId;

class CwZcfzbHexunProcessor extends BaseDownloadForUpdateProcessor {
	
	public CwZcfzbHexunProcessor(ProcessParams params,
			DownloadIdentifier identifier) {
		super(params, identifier);
	}

	private JcsjCwZcfzbHexunBO html2BO(String gpdm, String html){
		if(StringUtils.isBlank(html)){
			return null;
		}
		html = StringUtils.substringBetween(html, "<span id=\"ControlEx1_lbl\">", "</span>");
		if(StringUtils.isBlank(html)){
			return null;
		}
		JcsjCwZcfzbHexunBO bo = new JcsjCwZcfzbHexunBO();
		
		String tmp = StringUtils.substringBetween(html, "会计年度", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setId(new JcsjCwZcfzbHexunBOId(gpdm,Formatter.toDate(tmp)));
		
		tmp = StringUtils.substringBetween(html, ">货币资金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setHbzj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">交易性金融资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJyxjrzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收票据<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYspj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收账款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYszk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">预付款项<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYufkx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其他应收款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setQtysk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收关联公司款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYsglgsk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收利息<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYslx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收股利<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYsgx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">存货<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setCh(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">消耗性生物资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setXhxswzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">一年内到期的非流动资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYnndqfldzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其他流动资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setQtldzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">流动资产合计<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setLdzchj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">可供出售金融资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setKgcsjrzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">持有至到期投资<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setCyzdqtz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">长期应收款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setCqysk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">长期股权投资<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setCqgqtz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">投资性房地产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setTzxfdc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">固定资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setGdzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">在建工程<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setZjgc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">工程物资<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setGcwz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">固定资产清理<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setGdzcql(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">生产性生物资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setScxswzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">油气资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYqzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">无形资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setWxzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">开发支出<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setKfzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">商誉<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setSy(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">长期待摊费用<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setCqtpfy(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">递延所得税资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setDysdszc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其他非流动资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setQtfldzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">非流动资产合计<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setFldzchj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">资产总计<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setZczj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">短期借款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setDqjk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">交易性金融负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJyxjrfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付票据<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYfpj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付账款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYfzk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">预收款项<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYskx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付职工薪酬<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYfzgxc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应交税费<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYjsf(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付利息<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYflx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付股利<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYfgx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其他应付款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setQtyfk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付关联公司款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYfglgsk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">一年内到期的非流动负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYnndqldfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其他流动负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setQtldfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">流动负债合计<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setLdfzhj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">长期借款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setCqjk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付债券<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYfzq(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">长期应付款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setCqyfk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">专项应付款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setZxyfk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">预计负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYjfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">递延所得税负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setDysdsfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其他非流动负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setQtfldfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">非流动负债合计<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setFldfzhj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">负债合计<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setFzhj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">实收资本<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setSszb(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">资本公积<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setZbgj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">盈余公积<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setYygj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">减：库存股<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setKcg(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">未分配利润<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setWfplr(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">少数股东权益<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setSsgdqy(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">外币报表折算价差<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setWbbbzsjce(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">非正常经营项目收益调整<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setFzcjyxmsytz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">归属母公司所有者权益<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setGsmgssyzqy(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">所有者权益（或股东权益）合计<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setSyzqyhj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">负债和所有者（或股东权益）合计<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setFzsyzqyhj(Formatter.toDouble(tmp));
		
		/* 金融机构专有 */
		
		tmp = StringUtils.substringBetween(html, ">现金及存放同业款项<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrXjjcftykx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">客户资金存款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrKhzjck(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">存放中央银行款项<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrCfzyyhkx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">结算备付金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrJsbfj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">客户备付金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrKhbfj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">贵金属<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrGjs(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">拆出资金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrCczj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">衍生金融资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsjrzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">买入返售金融资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrMrfsjrzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收保费<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsbf(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收代位追偿款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsdwzck(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收分保帐款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsfbzk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收分保未到期责任准备金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsfbwdqzrzbj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收分保未决赔款准备金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsfbwjpczbj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收分保寿险责任准备金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsfbsxzrzbj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收分保长期健康险责任准备金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsfbcqjkxzrzbj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">保户质押贷款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrBhzydk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">定期存款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrDqck(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">发放贷款及垫款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrFfdkjdk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">存出保证金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrCcbzj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">代理业务资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrDlywzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应收款项<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYskx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">存出资本保证金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrCczbbzj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">独立帐户资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrDlzhzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其他资产<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrQtzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">向中央银行借款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrXzyyhjk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">同业及其他金融机构存放款项<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrTyjqtjrjgcfkx(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其中：质押借款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrZyjk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">拆入资金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrCrzj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">衍生金融负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsjrfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">卖出回购金融资产款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrMchgjrzck(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">吸收存款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrXsck(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">代理买卖证券款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrDlmmzqk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">代理承销证券款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrDlcxzqk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">预收保费<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYsbf(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付手续费及佣金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYfsxfjyj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付分保帐款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYffbzk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">代理业务负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrDlywfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付赔付款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYfpfk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">应付保单红利<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYfbdhl(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">保户储金及投资款<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrBhcjjtzk(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">未到期责任准备金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrWdqzrzbj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">未决赔款准备金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrWjpkzbj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">寿险责任准备金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrSxzrzbj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">长期健康险责任准备金<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrCqjkxzrzbj(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">独立帐户负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrDlzhzc(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">其他负债<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrQtfz(Formatter.toDouble(tmp));
		
		tmp = StringUtils.substringBetween(html, ">一般风险准备<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setJrYbfxzb(Formatter.toDouble(tmp));
		
		/* end */
		
		tmp = StringUtils.substringBetween(html, ">备注<", "<tr>");
		tmp = StringUtils.substringBetween(tmp, "class='tishi'>", "</div>");
		bo.setBz(Formatter.toString(tmp));
		
		bo.setLastupdate(currentTime);
		
		return bo;
	}
	@Override
	public void convertHTML2BO(String url, String html, BOSaver collector) {

		if(StringUtils.isBlank(html)){
			return;
		}
		
		JcsjCwZcfzbHexunBO bo  = html2BO(context.getEnvAsString("gpdm"),html);
		if(bo!=null){
			collector.addBO(bo);
		}
	
	}

	@Override
	public UrlPattern getUrlPattern() {
		return new StockIteratorUrlPattern(context) {
			
			@Override
			public String bo2url(DmGpBO bo) {
				String dateStr = DateUtils.formatDate(getRq(), "yyyy.MM.dd");
				return "http://stockdata.stock.hexun.com/2008/zcfz.aspx?stockid="+bo.getGpDmJ()+"&accountdate="+dateStr;
			}
		};
	}

}
